{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "from __future__ import print_function\n",
    "import sdm as sdmlib\n",
    "from sdm import utils\n",
    "import numpy as np\n",
    "import matplotlib.mlab as mlab\n",
    "from IPython.display import clear_output\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "bits, radius = 1000, 451\n",
    "#bits, radius = 256, 103\n",
    "\n",
    "p = utils.calculate_probability(bits, radius)\n",
    "\n",
    "sample = 1000000\n",
    "scanner_type = sdmlib.SDM_SCANNER_OPENCL\n",
    "\n",
    "address_space = sdmlib.AddressSpace.init_random(bits, sample)\n",
    "address_space.opencl_init();"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.0010718500489241473"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "p"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "counter = []"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0\n"
     ]
    }
   ],
   "source": [
    "for i in range(100):\n",
    "    if i%100 == 0:\n",
    "        clear_output(wait=True)\n",
    "        print(i)\n",
    "    bs = sdmlib.Bitstring.init_random(bits)\n",
    "    result = address_space.scan_opencl2(bs, radius)\n",
    "    for idx in result:\n",
    "        bs2 = address_space.get_bitstring(idx)\n",
    "        counter.append(bs.distance_to(bs2))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "from math import factorial\n",
    "comb = lambda a, b: factorial(a) // factorial(b) // factorial(a-b)\n",
    "acc = [0]\n",
    "for i in range(radius+1):\n",
    "    acc.append(acc[-1] + comb(bits, i))\n",
    "acc = acc[1:]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "x = []\n",
    "y = []\n",
    "for d in range(0, radius+1):\n",
    "    x.append(d + 0.5)\n",
    "    y.append(((1.0*comb(bits, d)) / acc[radius]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 800x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(8, 6), dpi=100)\n",
    "plt.hist(counter, bins=range(0, radius+2), density=True)\n",
    "plt.plot(x, y, 'r', linewidth=2.0)\n",
    "plt.xlim(400, radius+5)\n",
    "plt.ylabel('Probability')\n",
    "plt.xlabel('Distance from the center')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "from math import log\n",
    "I = [-log(p)/log(2) if p > 0 else 0 for p in y]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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7rvwl79A69apXlGR21e73Xbw5JNQwDP7i51BVpIkqa5+//v00NcHH8C550Ia6p9U7avt2RPuvz+FXOWVQVaSJGlhtW2bm0V71VVpz2yVF15I+2o7dYJbboEff8yszcbGICtJkpQvLVumh77efhvuvBPWWy/33ltvpX21ju7KG4OsJElSvjVvnnvo68EHYbPNcu99/HEa3bXiinDaaWmUl+rEICtJklRfQoDtt08PfT37LOy0U+69sjK4+OK0DeHgg9MkBNWKQVaSJKkhVD309eab6XSwRRZJ9fLytHe2UyfYcUd46iknHdSQQVaSJKkhrbUW3HgjvP8+nHEGLLlk7r2RI9M2hJ4907zauXMza7MYGGQlSZKysPzy6VSwDz+ESy9Ne2arvPAC7LZbCr3XXQczZ2bXZwEzyEqSJGWpTRs48USYMgXuuAM6d8699847cNRRsPLKaU7tl19m12cBMshKkiQVgtJS2HdfePVVePRR2Hrr3Huffw5nnw0rrQTHH5+2JcggK0mSVFBCgN694fHH4eWXYa+9oFllZJsxA668ElZfHfbeG8aNy7bXjBlkJUmSClXXrvCvf6UtBscdlw5cgPQQ2F13QbdusM028PDDTXLSgUFWkiSp0HXoAFdckR4MO+ccWHrp3HujR6dZteuuC0OHwqxZ2fXZwAyykiT9f3v3HmVZWZ95/PsADQMNgkCkMWIgqA0SBXEIo6BgtAkalYs6RKLBsIyixEiUIUCCOiIjgksRBU3ICniBKGNEFKJcZBBXAAFhEFYroNItyFVAuqe7aRp45493F3U8VnVd+lSdvbu/n7XO6trX8+7z6/esp97aF6krttoKTjgBFi+Gz3++nmIwYuHCen/a7beHj31snbgwzCArSZLUNRtvDEccAT/9KVxwAey99+iy+++vYXe77eC974U77hheO2eYQVaSJKmr1l8fDjywPg3s2mvhLW8ZvTBsxYo6ajt//ug6a9l5tAZZSZKktcGee8L559cLw97/fpg7t84vBS68sD4xbGSdJ54YblsHxCArSZK0NtlhBzjtNLjrLjj5ZHj2s0eXXX89HHJIPbf2tNNg6dLhtXMADLKSJElro2c+E/7+7+HOO+FLX4Jddx1dtnhxfZrYdtvBMcfA3XcPr51rwCArSZK0NttwQ3j72+Gmm+pDFvbff3TZo4/CqafWUdy3v70+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\n",
      "text/plain": [
       "<Figure size 800x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(8, 6), dpi=100)\n",
    "plt.plot(x, I, 'r', linewidth=2.0)\n",
    "plt.xlim(420, radius)\n",
    "plt.ylim(0, 15)\n",
    "plt.ylabel('Self information')\n",
    "plt.xlabel('Distance to the center')\n",
    "plt.grid()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAArIAAAIHCAYAAABjfr9GAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvFvnyVgAAIABJREFUeJzs3XmclXX9///Ha2AUQcAFc0nL3CozwzW1NFuotLIs65O0KYsYohGiSVqA+y7u+1ZGpX4+Wmp+FTPNj+WWWn7y55KRpOJugIJwgPfvj+uMM+IMzBzOzHVdcx732+3cer+vOefMs94eenrxPtcVKSUkSZKksmnKO4AkSZJUC4usJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFLqm3eA7hYRAWwAzMs7iyRJkjo0EHgupZQ6+4JeX2TJSuwzeYeQJEnSCm0IPNvZJzdCkZ0HMHPmTNZaa628szS8SqXCrbfeymc/+1mam5vzjtPwXI9icT2KxfUoFtejWOq9HnPnzmWjjTaCLv4NeiMUWQAGDhzIoEGD8o7R8CqVCv3792fQoEH+QVQArkexuB7F4noUi+tRLEVZD7/sJUmSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqpVyLbETsFhE3RMRzEZEi4ivLee4F1eeM78mMkiRJKqa8z8gOAP4KHLS8J0XE3sBOwHM9EUqSJEnF1zfPX55Suhm4GSAi2n1ORLwbOBv4HHBTj4WTJElSoeVaZFckIpqAnwOnpJT+3lHZXeY1qwKrtjk0EKBSqVCpVLolpzqvZQ1ci2JwPYrF9SgW16NYXI9iqfd61Po+kVKqS4CVFREJ2DuldH2bY5OATwKfSymliPgXMC2lNG057zMFmLzs8enTp9O/f/+655YkSdLKmT9/PsOHDwcYnFKa29nXFfaMbERsB/wA2DZ1rW2fAJzeZj4QeOaTn/wka6+9dj0jqgaVSoUZM2YwbNgwmpub847T8FyPYnE9isX1KBbXo1jqvR5z53a6u75NYYsssCvwLmBWmy0FfYDTImJ8Smnj9l6UUloILGyZt7y2ubnZf/ALxPUoFtejWFyPYnE9isX1KJZ6rUet71HkIvtz4LZljt1SPX55z8eRJElSkeRaZCNidWCzNofeFxFDgVdTSrOAV5Z5fgV4PqX0eA/GlCRJUgHlfUZ2e+APbeYte1uvBPbr8TSSJEkqjbyvI3sHsOJrarU+f+NuCyNJkqRSyfvOXpIkSVJNLLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSqlhimzce2/eESRJklRHDVNk+xx8MCxYkHcMSZIk1UnDFNn45z/hJz/JO4YkSZLqpGGKLABnnAF//nPeKSRJklQHjVVkly6FESPgzTfzTiJJkqSV1DBFduk222SDxx6DKVNyzSJJkqSV1zBFdslZZ8Eqq2STU06B++7LN5AkSZJWSsMUWT74QZg8ORsvXQr77w8LF+abSZIkSTVrnCILcPjhsN122fjRR+Hoo/PNI0mSpJo1VpHt2xcuvxyam7P5SSfBX/6SbyZJkiTVpLGKLMCHP9x6PdklS2C//WDRolwjSZIkqesar8gCHHEEDB2ajf/v/+DYY/PNI0mSpC5rzCLb3JxtMejbN5ufcAI89FC+mSRJktQljVlkITsj++MfZ+PFi7OrGLjFQJIkqTT65h0gV0ceCdddB488An/9Kxx2GHzpS3mn6tiWW8IGG+SdQpIkqRAau8iusgpccQXsuGP2xa+zzsoeRTVgAPzpT7D11nknkSRJyl3jbi1ose22MGlS3ik65403sqssVCp5J5EkScpdY5+RbTFlCrz3vfD003kn6djVV8MTT2RfSjv55GxbhCRJUgOzyAL06QOjRuWdYvn22gt22im7ve7UqfDlL8NWW+WdSpIkKTduLSiLHXbIvowG2daC/ffPrrYgSZLUoCyyZTJlCnzgA9n4gQfg1FNzjSNJkpQni2yZ9OuX3cihqbpskyfDo4/mm0mSJCknFtmy2WknmDAhGy9aBCNGZJcOkyRJajAW2TI6+mjYYotsfO+9cMYZ+eaRJEnKgUW2jFZbLdtiEJHNjzoKHn8830ySJEk9zCJbVrvsAuPHZ+OFC91iIEmSGo5FtsyOPRY22ywb/+lPxb69riRJUp1ZZMusf3+47LLWLQZHHglPPplvJkmSpB5ikS27XXeFceOy8YIFMHJkdvcvSZKkXs4i2xuccAJsskk2vusuOPfcfPNIkiT1AItsbzBgAFx6aev8iCPgqafyyyNJktQDLLK9xe67w9ix2Xj+fLcYSJKkXs8i25ucdBJsvHE2vvNOuOCCXONIkiR1J4tsb7L66nDJJa3zww+HmTPzyyNJktSNLLK9zac/DWPGZOM33oBRoyClfDNJkiR1A4tsb3TyybDRRtn49tvhoovyzSNJktQNLLK90aBBb99iMHEiPP10fnkkSZK6gUW2t/rsZ7MrFwC8/jqMHu0WA0mS1KtYZHuz006DDTfMxjNmZLezlSRJ6iUssr3Z4MFv3x87YQI880x+eSRJkurIItvb7bEH7LdfNp47Fw44wC0GkiSpV7DINoLTT4cNNsjGN98MV16Zbx5JkqQ6sMg2gjXXhAsvbJ2PHw/PPptfHkmSpDrItchGxG4RcUNEPBcRKSK+0uZnzRFxUkQ8EhFvVJ/zs4jYIM/MpfXFL8J3vpON58yBAw90i4EkSSq1vjn//gHAX4HLgP9Z5mf9gW2BY6rPWRM4E/gtsH0PZuw9pk3Lrl7w/PNw441w+eWw9971e/811oCI+r2fJEnScuRaZFNKNwM3A8QyBSilNAcY1vZYRIwD7ouI96SUZrX3nhGxKrBqm0MDASqVCpVKpX7hy2jgQOKcc+i7zz7ZfOTI1mvN1kHabDMW//73sP76HT6nZQ0afi0KwvUoFtejWFyPYnE9iqXe61Hr+0QqyF8vR0QC9k4pXb+c53wGuBVYI6U0t4PnTAEmL3t8+vTp9O/fv05py227005jw7vu6pb3nr3jjtw3aZJnZiVJUqfNnz+f4cOHAwzuqOO1pzRFNiL6AXcDj6WUvrWc92nvjOwzs2fPZu21165n5PKaM4emI48kZrV7Ursmce+9xGuvAbD4yitJ++7b7vMqlQozZsxg2LBhNDc31+33qzauR7G4HsXiehSL61Es9V6PuXPnMmTIEOhikc17j2ynREQzcDUQwPeX99yU0kJgYZvXAtDc3Ow/+C2GDHn7VQzq4b//G6pbFvr+8Ifwuc/Buut2+HTXo1hcj2JxPYrF9SgW16NY6rUetb5H4S+/1abEvhcY1pWWrh70ta/BN76RjV99FcaO9aoIkiSpWxW6yLYpsZsDn0kpvZJzJC3POedkZ3sB/ud/4Jpr8s0jSZJ6tbyvI7t6RAyNiKHVQ++rzt9TLbHXkl1q61tAn4hYr/pYJbfQ6tg668C557bODzoIXnopvzySJKlXy/uM7PbAQ9UHwOnV8dHAu4G9gA2Bh4HZbR679HhSdc7Xvw5f/Wo2fvllGDcu3zySJKnXyrXIppTuSClFO4/9Ukr/6uBnkVK6I8/cWo4IOO88WGutbH711dkXwSRJkuos7zOy6o3WXRfOPrt1PnZsdnZWkiSpjiyy6h777gtf/nI2fvFFOOSQfPNIkqRexyKr7hEB558Pa66ZzX/5S7i+w5u2SZIkdZlFVt1n/fXhzDNb5wcemF1jVpIkqQ4ssupe3/42fPGL2fiFF+hz6KH55pEkSb2GRVbdKwIuuAAGDwag6Re/YN377885lCRJ6g0ssup+7343TJv21vQj558Pr72WYyBJktQbWGTVM773PdhjDwBWe/VV+hx2WM6BJElS2Vlk1TMi4MILSYMGAdD0s5/BzTfnHEqSJJWZRVY9Z6ONWHLyya3z0aNhzpz88kiSpFKzyKpHpf3358WPfCSbPPssTJyYbyBJklRaFln1rAgeHjeOtPrq2fySS+DWW/PNJEmSSskiqx63YJ11WHrSSa0HRo+GuXPzCyRJkkrJIqtcLB01Cj71qWwyaxYcfni+gSRJUulYZJWPCLj0UhgwIJtfeCH8/vf5ZpIkSaVikVV+Nt4Y2l7FYNQoeP313OJIkqRyscgqXwceCLvvno3/9S844og800iSpBKxyCpfTU3ZlQv698/m554Ld9yRayRJklQOFlnlb9NN4YQTWucjR8Ibb+SXR5IklYJFVsUwbhzsums2/uc/4cc/zjePJEkqPIusiqGpKbuKQb9+2fzss+Guu/LNJEmSCq1v3gGkt2y+ORx/PEyYACnBnnvCOuvU7/133BEuu6x1P64kSSo1i6yK5ZBD4Jpr4M9/zi7FVc/Lcc2cCRtsAKefXr/3lCRJubHIqlj69IGrroJvfhOefrp+7/vKK7BkCUybBl/7GnzsY/V7b0mSlAuLrIpnk03gvvvq+56nnJLdBjclGDECHn4YVlutvr9DkiT1KL/spcYwYQJ89KPZ+Ikn4Kc/zTePJElaaRZZNYY+fbIveq2ySjY//XS45558M0mSpJVikVXj2HJLmDo1Gy9dCvvvD2++mW8mSZJUM4usGsvEibD99tn4scdai60kSSodi6waS9++cPnl0NyczU8+Ge6/P99MkiSpJhZZNZ6ttoLJk7NxyxaDhQvzzSRJkrrMIqvGdPjhsM022fjvf4djjsk3jyRJ6jKLrBpTczNccUW21QDgxBPhwQdzjSRJkrrGIqvGtfXWcNRR2XjJEthvP1i0KNdIkiSp8yyyamyTJsFHPpKNH3kEjj8+3zySJKnTLLJqbKuskl3FoGWLwXHHZbevlSRJhWeRlbbZJjszC7B4cXYVg0ol30ySJGmFLLISZHtlt9oqGz/8cPblL0mSVGgWWQlatxj06ZPNjzkm2zMrSZIKyyIrtdh+e/jRj7JxpZJdxcAtBpIkFZZFVmrrpz+FLbfMxg8+CKeckm8eSZLUIYus1Naqq2ZbDJqqH42pU7M7f0mSpMKxyErL2nFHmDgxGy9alF3FYPHifDNJkqR3sMhK7Zk6FT7wgWx8//1w+un55pEkSe9gkZXa068fXHYZRGTzn/4UHnss30ySJOltLLJSR3beGSZMyMYLF2ZbDJYsyTeTJEl6i0VWWp5jjoHNN8/G99wD06blm0eSJL3FIistz2qrvX2LwVFHwRNP5JtJkiQBFllpxT7+cfjBD7Lxm2/CiBFuMZAkqQByLbIRsVtE3BARz0VEioivLPPziIijI2J2RCyIiNsiYvO88qqBHXccbLppNr77bjjnnHzzSJKk3M/IDgD+ChzUwc8PBw4BDgQ+CrwB3BIR/XomnlTVv3+2xaDFpEnwj3/kl0eSJNE3z1+eUroZuBkgWvYgVkV2YDxwbErpN9Vj3wVeAL4C/KpHw0q77QbjxmVnYxcsgC98AbbeOu9UHfvoR7OrLjTl/e+rkiR1j1yL7Aq8D1gPuK3lQEppTkTcC+xMB0U2IlYFVm1zaCBApVKhUql0X1p1SssalHYtjj6avjfdRMycmX3pq8hf/Lr2WpY0N7N07NgOn1L69ehlXI9icT2KxfUolnqvR63vEymlugRYWRGRgL1TStdX57sAdwMbpJRmt3ne1UBKKf1XB+8zBZi87PHp06fTv3//7oiuBrPWo4+y89FH0/fNN/OOskKL+/XjD9OmMX+99fKOIklSh+bPn8/w4cMBBqeU5nb2db2xyLZ3RvaZ2bNns/baa3dbfnVOpVJhxowZDBs2jObm5rzj1G7BAnjllbxTdKjPccfRdOmlACzdfXeW/L//1+4Wg16zHr2E61EsrkexuB7FUu/1mDt3LkOGDIEuFtkiby14vvqf6wKz2xxfF3i4oxellBYCC1vmLXtvm5ub/Qe/QEq/Hs3NMGhQ3ik6dsYZcNtt8PTTNN1xB02XXw4HHtjh00u/Hr2M61EsrkexuB7FUq/1qPU9ivwtkJlkZfbTLQciYhDZ1Qv+nFcoqRQGDoRLLmmdH3YYPP10fnkkSeoGeV9HdvWIGBoRQ6uH3ledvydlex6mAUdFxF4R8WHgZ8BzwPV5ZZZK4zOfgdGjs/Hrr8OoUVCQrUSSJNVD3mdktwceqj4ATq+Oj67OTwbOBi4C7gdWBz6fUir+t2ykIjj1VNhoo2x8221vP0srSVLJ5VpkU0p3pJSincd+1Z+nlNJPU0rrpZT6pZQ+k1Iq8PWOpIIZNAguvrh1fuihMGtWfnkkSaqjvM/ISupun/scjBiRjefNgwMOcIuBJKlXsMhKjeC002CDDbLxLbfAFVfkGkeSpHqwyEqNYI014KKLWuc//CE8+2x+eSRJqgOLrNQovvAF+O53s/GcOTBmjFsMJEmlZpGVGsm0abD++tn4ppuIq67KN48kSSvBIis1kjXXhAsvfGva59BD6ffqqzkGkiSpdhZZqdF86UvwrW8BEP/5D1uff75bDCRJpWSRlRrRmWfCuusCsP799xO//GXOgSRJ6jqLrNSI1l4bzj//rWmfCRPg+edzDCRJUtdZZKVGtffeLP3GNwCIV1+FsWPdYiBJKhWLrNTAlkybxsLBg7PJddfB1VfnG0iSpC6wyEqNbMgQ/jpmTOv8oIPgxRfzyyNJUhdYZKUGN3uXXVj61a9mk1degXHj8g0kSVInWWQlseSss7IvgAFccw1ce22+gSRJ6gSLrCR417vg3HNb52PHwssv55dHkqROsMhKynzjG7D33tn4pZfg4IPzzSNJ0gp0uchGxLoR8fOIeC4iFkfEkraP7ggpqQdEwHnnwVprZfNf/Sq7koEkSQXVt4bXXAG8BzgGmA144Umpt1hvPTjrLPj2t7P5978Pu+3Wun9WkqQCqaXIfhzYNaX0cL3DSCqA4cOz68n+9rfwwgswfjz8/Od5p5Ik6R1q2SP7byDqHURSQUTABRfAGmtk86uughtuyDeTJEntqKXIjgdOjIiN6xtFUmGsvz6ceWbrfMwYeO21/PJIktSOWrYW/BroDzwVEfOBStsfppTWqkcwSTn7znfg17+G3/0OZs+GffeFT36yfu+/ww7wqU/V7/0kSQ2nliI7vu4pJBVPBFx0EXzoQzBnDtxyS/aopxtvhC98ob7vKUlqGF0usimlK7sjiKQCeve74eyz4bvf7Z73P+AA+PvfW/fjSpLUBbWckSUi+gBfAT5YPfR34LcpJa8jK/U23/lOdlZ21qz6vefZZ8Ptt8Nzz8Ghh8Kll9bvvSVJDaPLRTYiNgN+B7wbeLx6eBLw74j4QkrpqTrmk1QE226bPer5flttBfPmwWWXwde/Dp//fP3eX5LUEGq5asFZwFPARimlbVNK25LdIGFm9WeStHzveQ+cemrrfPTobB+uJEldUEuR/QRweErp1ZYDKaVXgCOqP5OkFRs9Gj7zmWz8zDNw2GH55pEklU4tRXYhMLCd46sDi1YujqSGEQEXXwwDBmTziy+G227LN5MkqVRqKbI3AhdFxEej1U7ABcBv6xtPUq+28cZwyimt85Ejs32zkiR1Qi1F9hCyPbJ/Bt6sPu4G/gH8oH7RJDWEMWNg992z8axZ8KMf5RpHklQeXS6yKaX/pJS+DLwf2Kf6eH9Kae+Ukt/WkNQ1TU3Z5bf698/m55+fXZpLkqQVqOWMLAAppSdTSjdUH/+oZyhJDWaTTeDEE1vno0bB66/nl0eSVAqduo5sRJwO/CSl9EZ13KGU0oS6JJPUWA46CK65Bu66C2bOhEmTshsnSJLUgc7eEGEboLnNWJLqq6kpuznC1lvDggVwzjmwzz7wCa/qJ0lqX6eKbErpk+2NJamuNtsMjj8efvjDbD5yJPztb637ZyVJaqPLe2Qj4rKIeMd1ZCNiQERcVp9YkhrWwQfDxz6WjZ96Co48Mt88kqTCquXLXt8DVmvn+GrAd1cujqSG16dPtsWgX79sfuaZcPfd+WaSJBVSp4tsRAyKiMFAAAOr85bHmsCewIvdFVRSA9liCzj22GycEuy/f7ZvVpKkNrpyRvY/wKtAAp4AXmvzeBm4DDi33gElNajx42GnnbLxk0/CT36Sbx5JUuF09qoFAJ8kOxt7O/A1slLbYhHwdErpuTpmk9TIWrYYbLMNLFwIZ5wBX/sa7Lxz3skkSQXR6SKbUroTICLeB/w7pbS021JJEsAHPwhTp8IRR8DSpTBiBDz0UOv+WUlSQ6vlFrVPp5SWRkT/iPhARGzd9tEdISU1sEMPhR12yMaPPQZTpuQaR5JUHLVcfmudiLgRmAf8HXhomYck1U/fvnD55bDKKtn8lFPgvvvyzSRJKoRaLr81DVgD+CiwAPg82SW5ngT2ql80Sar60Idg8uRsvHRpdhWDhQvzzSRJyl0tRfZTwISU0gPAUrIveV0FHA5Mqmc4SXrL4YfDdttl40cfhaOPzjePJCl3tRTZAbReL/Y1YJ3q+BFg23qEkqR3aNli0NyczU86Cf7yl3wzSZJyVUuRfRx4f3X8V2BMRLwbOBCYXa9gkvQOH/5w6/VklyzJthgsWpRvJklSbmopsmcC61fHU4E9gFnAIcCP65RLktp3xBEwdGg2fuQROO64fPNIknJTy+W3rkopXVEd/wV4L7ADsFFK6df1DBcRfSLimIiYGRELIuKpiPhJREQ9f4+kEmluzrYY9K1eBvv44+Hhh/PNJEnKRS1nZN8mpTQ/pfRgSunlegRaxo+A7wPjgA9W54cDB3fD75JUFkOHwo+rfwG0eDHstx9UKrlGkiT1vK7cohaA6tnQfchuWfsulinDKaWv1icaALsAv0kp3VSd/ysi9gV2rOPvkFRGRx4J112XbS/4619h4kT40pfyTtWxLbeEDTbIO4Uk9SpdLrJk15EdA/wBeAFIdU30dn8CDoiILVJKT0TER4CPAxM6ekFErAqs2ubQQIBKpULFMza5a1kD16IYSr0eEXDJJfTdZRdiyRI466zsUVBpwAAW33knbN3xDRBLvR69kOtRLK5HsdR7PWp9n0ipaz00Il4Fvp1S+l1Nv7Frv6sJOJ5sO8ESoA9wZErphOW8Zgowednj06dPp3///t2UVFJePvCLX/D+a67JO0an/GeTTfjjySeT+tZyDkGSeq/58+czfPhwgMEppbmdfV0tRXYmsEdK6bGuRey6iPgmcApwGNntcIeSnRGekFK6soPXtHdG9pnZs2ez9tprd3NirUilUmHGjBkMGzaM5pbrgSo3vWI9liwhrrySePrpvJN0qOnaa4knnwRgydSpLJ3U/r1jesV69CKuR7G4HsVS7/WYO3cuQ4YMgS4W2VpOC0wBJkfEiJTSghpe3xWnACemlH5VnT8SEe8lu4NYu0U2pbQQeOvelS0XOGhubvYf/AJxPYql1OvR3AxjxuSdYvn23ht22gmWLqXPscfS56tfha226vDppV6PXsj1KBbXo1jqtR61vkctVy24GlgTeDEiHomIB9s+akrRsf5kt8Ftawl1uNqCJPWYHXaAww7LxpVKdiOHxYvzzSRJvUAtZ2SvBLYDrqL7v+x1A3BkRMwi21qwDdkXvS7rxt8pSfU3ZQr85jfw2GPwwANw6qnZzR0kSTWrpch+AfhcSul/6x2mHQcDxwDnkV3q6zngQuDoHvjdklQ//fplN3L42Mdg6VKYPBn22iu7LJckqSa1/BX9v4FOb8JdGSmleSml8Sml96aUVkspbZpSOiql5M3VJZXPTjvBhOrVAxctghEjYMmSfDNJUonVUmQPBU6OiI3rG0WSGsDRR8MWW2Tje++FM87IN48klVgtRfYqsrt6PRUR8yLi1baPOueTpN5ltdWyLQbVK6pw1FHw+OP5ZpKkkqplj+z4uqeQpEayyy4wfnx2NnbhwmyLwR//mHcqSSqdLhXZiOhLdpWCW1JKL3RPJElqAMceCzfcAP/4B/zpT9ntdceNyzuVJJVKl7YWpJQWAxcA/bonjiQ1iP794bLLWrcYHHkkVO/+JUnqnFr2yN5Hdj1XSdLK2HXX1rOwCxbQZ8yY7NJckqROqaXIngecFhHjImLniNi67aPeASWpVzvhBNhkEwCa/vd/ed/vfpdzIEkqj1qK7K+A9wFnAXcDDwMPtflPSVJnDRgAl1761nTLn/8cnnoqx0CSVB61FNn3tfPYpM1/SpK6YvfdYexYAPouXOgWA0nqpC4X2ZTS08t7dEdISer1TjqJtPHGADT98Y9wwQX55pGkEqjljCwRsWlEnB0Rt1UfZ0XEpvUOJ0kNY/XVWdK2vB5+OMycmV8eSSqBLhfZiPgc8CiwI/C36uOjwN8jYlh940lS40if+hQzP/e5bPLGGzBqFKSUbyhJKrBazsieCJyRUvpoSmlC9fFRYBpwUn3jSVJjefR73yNttFE2uf12uOiifANJUoHVUmQ/CFzazvHLgC1XLo4kNbbF/fu/fYvBxInwtF8/kKT21FJkXwKGtnN8KPDiysWRJKVhw2DkyGzy+uswerRbDCSpHbUU2YuBiyLiRxGxa/VxBHBh9WeSpJV12mmw4YbZeMaM7Ha2kqS3qaXIHgMcDRwM3Fl9jAOmAMfWLZkkNbLBg9++P3bCBHjmmfzySFIBdarIRsReEdEMkDJnpJQ2BAYDg1NKG6aUzkzJv/uSpLrZYw/Yb79sPHcuHHCAWwwkqY3OnpG9DlgDICKWRMS7AFJK81JK87ornCQ1vNNPhw02yMY33wxXXplvHkkqkM4W2ZeAnarjADwlIEk9Yc014cILW+fjx8Ozz+aXR5IKpLNF9gLgNxGxhKzEPl89M/uOR/dFlaQG9cUvwne+k43nzIEDD3SLgSQBfTvzpJTSlIj4FbAZ8Ftgf+A/3RlMktTGtGnZ1Quefx5uvBEuvxz23rt+77/GGhBRv/eTpB7QqSILkFJ6DHgsIqYC16SU5ndLfMCrAAAgAElEQVRfLEnS26y1FlxwAXzlK9l85MjWa83Ww+abw513wvrr1+89JambdfnyWymlqZZYScrBl78M++7bPe/95JNuWZBUOp0+I9siItYFTgU+DbyL7Mtfb0kp9alPNEnSO5x/fnaN2Xretvaee+C11+C3v4Vf/hKGD6/fe0tSN+pykQWuAN5DdmOE2XgFA0nqOYMHZ2W2nv77v2GffbLxwQfDpz8N665b398hSd2gliL7cWDXlNLD9Q4jScrB174G3/gGXH01vPoqjB0L117rl78kFV4tt6j9N8tsJ5Akldw558CQIdn4f/4Hrrkm3zyS1Am1FNnxwIkRsXF9o0iScrPOOnDuua3zgw6Cl17KL48kdUItRfbXwO7AUxExLyJebfuobzxJUo/5+tfhq1/Nxi+/DOPG5ZtHklaglj2y4+ueQpKUvwg47zy4445sr+zVV2d7Z7/2tbyTSVK7ulxkU0pXdkcQSVIBrLsunH02fOtb2XzsWPjEJ1r3z0pSgXRqa0FEDGo7Xt6j+6JKknrEvvtmN18AePFFOOSQfPNIUgc6u0f2tYh4V3X8H+C1dh4txyVJZRaRXat2zTWz+S9/Cddfn28mSWpHZ7cWfApo+SLXJ7spiySpKNZfH848E7773Wx+4IGw226w1lr55pKkNjpVZFNKd7Y3liT1Yt/+dvaFrxtvhBdegPHj4Wc/yzuVJL2llstvSZIaQQRccEF2W1yAn/88K7WSVBAWWUlSx979bpg2rXU+Zgy85tchJBWDRVaStHzf+x7ssUc2fu45mDAh3zySVNXZy2/tFRHN3R1GklRAEXDhhTCoeoXFK66Am2/ONZIkQefPyF4HrAEQEUvaXIpLktQINtoITjutdT56NMyZk18eSaLzRfYlYKfqOIDUPXEkSYU1ciQMG5aNn30WJk7MN4+khtfZInsB8JuIWEJWYp+vnpl9x6P7okqSchUBl1wCq6+ezS+5BG69Nd9MkhpaZ68jOyUifgVsBvwW2J/sTl6SpEbynvfAqadmN0iAbIvBI4+07p+VpB7U2Tt7kVJ6DHgsIqYC16SU5ndfLElSYR1wQHajhNtvh1mz4PDDs+vNSlIP6/Llt1JKUy2xktTAIuDSS2HAgGx+4YXw+9/nm0lSQ+rUGdmIeIhOfsErpbTtSiWSJBXfxhvDySfDQQdl81Gjsi0GLftnJakHdHZrwfXdmkKSVD4HHgjXXAN33AH/+hcccQScc07eqSQ1kM5+2WtqdweRJJVMU1N25YKtt4b58+Hcc2GffWD33fNOJqlB1HSL2ohYIyJGRcQJEbFW9di2EfHu+saTJBXappvCCSe0zkeOhDfeyC+PpIbS5SIbEVsDTwA/AiZSveMX8FXghI5eV6uIeHdEXBURr0TEgoh4JCK2r/fvkSTVaNw42HXXbPzPf8KPf5xvHkkNo5YzsqcDV6SUNgfebHP8d8BudUlVFRFrAncDFWAPYEvgUOC1ev4eSdJKaGrKrmLQr182P/tsuOuufDNJagidvo5sGzsAY9o5/iyw3srFeYcfAf9OKe3f5tjMOv8OSdLK2nxzOP54mDABUoI994R11sk7Vcd23BEuuwz69887iaSVUEuRXQi0dwuXLYCXVi7OO+wF3BIR1wCfICvL56WULu7oBRGxKrBqm0MDASqVCpVKpc7x1FUta+BaFIPrUSylX4/vf58+V19N0z33wOuvZ4+imjmTJeutx9JTTunwKaVfj17G9SiWeq9Hre8TKXXq8rCtL4i4BFgb+AbwKrA1sITsEl1/TCmNrylJ+7+rZevC6cA1ZGeDzwQOTCld2cFrpgCTlz0+ffp0+vtv3pLUrfo//zzbn3Yaq734Yt5ROrTKvHk0LV1KiuB/jz+eVz/4wbwjSQ1v/vz5DB8+HGBwSmluZ19XS5EdDFwLbE92tvM5si0Ffwb2TCnV7euqEbEIeCCltEubY2cBO6SUdu7gNe2dkX1m9uzZrL322vWKphpVKhVmzJjBsGHDaG5uzjtOw3M9isX16BlNp51Gn0mTAEibb87iBx6A1VZ7x/Ncj2JxPYql3usxd+5chgwZAl0ssl3eWpBSmgMMi4iPAR8BVgceTCnd1tX36oTZwKPLHPv/gK8tJ99Csu0PAEQEAM3Nzf6DXyCuR7G4HsXienSzww6D66+He+8lnnyS5mOOgeVsMXA9isX1KJZ6rUet71HTdWQBUkp3p5TOSymd3E0lFrIrFrx/mWNbAE930++TJPV2ffpkX/RaZZVsfvrpcM89+WaSVJNOF9mI2DkivrjMse9GxMyIeDEiLqr+tX49nQHsFBE/jojNImI4cABwbp1/jySpkWy5JUyt3rRy6VLYf394883lv0ZS4XTljOxPgQ+1TCLiw8ClwG3AicCXgEn1DJdSuh/YG9gX+D/gJ8D4lNIv6vl7JEkNaOJE2L56f53HHmsttpJKoytFdijw+zbzbwL3ppRGp5ROBw4hu5JBXaWUbkwpfTil1C+l9MHlXXpLkqRO69sXLr8cWvbmnXwy3H9/vpkkdUlXiuyawAtt5p8Abm4zvx/YqB6hJEnqEVttBZOrV2xs2WKwcOHyXyOpMLpSZF8A3gcQEasA2wJtd8cPJLuVrCRJ5XH44bDNNtn473+HY47JN4+kTutKkf0dcGJE7AqcAMwH2t5Me2vgqTpmkySp+zU3wxVXZFsNAE48ER58MNdIkjqnK0X2J8Bi4E5gNDA6pbSozc9HALfWMZskST1j663hqKOy8ZIlsN9+sGjRcl8iKX+dLrIppZdTSruR7ZVdM6V03TJP+TrgVz4lSeU0aRJ85CPZ+JFHaDrxxHzzSFqhLt8QIaU0J6W0pJ3jry5zhlaSpPJYZZXsKgbVLQZNJ57IoH/+M+dQkpan5jt7SZLU62yzTXZmFojFi9nm7LOh4veYpaKyyEqS1NZRR2WX5QLWmDmTppNPzjmQpI5YZCVJaqu6xSD16QNA0/HHwyOP5BxKUnssspIkLWv77Vk6cSIAUalkVzFwi4FUOBZZSZLasfSoo5i7UfWGlQ8+CKeckm8gSe9gkZUkqT2rrspDBx9Maqr+X+XUqdmdvyQVhkVWkqQO/GeLLVj6wx9mk0WLYP/9YfHifENJeotFVpKk5Vg6eTJ84APZ5P774fTT8w0k6S0WWUmSlqdfP7jsMojI5j/9KTz2WL6ZJAEWWUmSVmznnWHChGy8cGG2xWDJO25yKamHWWQlSeqMY46BzTfPxvfcA9Om5ZtHkkVWkqROWW21t28xOOooeOKJfDNJDc4iK0lSZ3384/CDH2TjN9+EESPcYiDlyCIrSVJXHHccbLppNr77bjjnnHzzSA3MIitJUlf0759tMWgxaRL84x/55ZEaWN+8A0iSVDq77QbjxmVnYxcsgC98AbbeOu9UHfvoR7OrLjR5/kq9i0VWkqRanHAC3HQTzJyZfemryF/8uvba7Hq448blnUSqK//VTJKkWqy+OvzsZzBgQN5JOueII+Cf/8w7hVRXnpGVJKlWH/84vPQSvPJK3kk6dvTRcPHF8MYbMGoU3HabWwzUa1hkJUlaGautBhtumHeKjp12Gtx6Kzz9NPzhD3DRRXDggXmnkurCfyWTJKk3GzgQLrmkdX7YYVmplXoBi6wkSb3dZz4Do0dn49dfz7YYpJRvJqkOLLKSJDWCU0+FjTbKxrfd9vaztFJJWWQlSWoEgwZlX/pqceihMGtWfnmkOrDISpLUKD73ORgxIhvPmwcHHOAWA5WaRVaSpEZy2mmwwQbZ+JZb4Iorco0jrQyLrCRJjWSNNbJLcLX44Q/h2WfzyyOtBIusJEmN5gtfgO9+NxvPmQNjxrjFQKVkkZUkqRFNmwbrr5+Nb7oJfv7zfPNINbDISpLUiNZcEy68sHX+gx/Ac8/ll0eqgUVWkqRG9aUvwbe+lY3/85/s1rVuMVCJWGQlSWpkZ54J666bjW+4AaZPzzeP1AUWWUmSGtnaa8P557fODzkEnn8+vzxSF1hkJUlqdHvvDd/8ZjZ+9VUYO9YtBioFi6wkSYKzz4Z11snG110HV1+dbx6pEyyykiQJhgyB885rnR90ELz4Yn55pE6wyEqSpMw++2QPgFdegXHj8s0jrYBFVpIktTr33OwLYADXXAPXXptvHmk5LLKSJKnVu96VldkWY8fCyy/nl0daDousJEl6u298I7uSAcBLL8HBB+ebR+qARVaSJL1dRPbFr7XWyua/+lV2JQOpYCyykiTpndZbD846q3X+/e9nXwCTCsQiK0mS2jd8OOy1VzZ+4QUYPz7fPNIySlVkI+KIiEgRMS3vLJIk9XoRcMEFsMYa2fyqq+CGG/LNJLVRmiIbETsAY4C/5Z1FkqSGsf76cOaZrfMxY+C11/LLI7XRN+8AnRERqwO/AEYDR+UcR5KkxvKd78Cvfw2/+x3Mng377guf/GSPRmhasoTNHn+cpr//Hfr0Wf6Td9gBPvWpngmmXJWiyALnAjellG6LiOUW2YhYFVi1zaGBAJVKhUql0o0R1Rkta+BaFIPrUSyuR7G4Hss491z6Dh1KzJkDt9ySPXpQH+BDXXj+4uuvJ+25Z3fFaXj1/nzU+j6RUqpLgO4SEd8EjgR2SCm9GRF3AA+nlNrdcR4RU4DJyx6fPn06/fv3786okiT1ahv+4Q9s13abQYEtWGstbj/rLBavvnreUdQJ8+fPZ/jw4QCDU0pzO/u6QhfZiNgIeAAYllL6W/XYHSy/yLZ3RvaZ2bNns3bLLfeUm0qlwowZMxg2bBjNzc15x2l4rkexuB7F4np04KGHiFmzevzXLlmyhIcffpihQ4fSZzlbC5rOO4+mP/wBgKX77ceSiy7qqYgNpd6fj7lz5zJkyBDoYpEt+taC7YB3AQ9GRMuxPsBuETEOWDWltKTtC1JKC4GFLfOW1zU3N/sHUYG4HsXiehSL61Esrscydtwxe/SwVKnwfL9+NO25J32Xtx477ghbbQXz5tF0xRU0/dd/wec/33NBG0y9Ph+1vkfRr1rwe+DDwNA2jwfIvvg1dNkSK0mSGtx73gOnnto6Hz0a5szJL4+6VaGLbEppXkrp/9o+gDeAV6pjSZKktxs9Gj7zmWz8zDNw2GH55lG3KXSRlSRJ6rIIuPhiGDAgm198Mdx2W76Z1C1KV2RTSrt39EUvSZIkADbeGE45pXU+ciTMm5dbHHWP0hVZSZKkThkzBnbfPRvPmgU/+lGucVR/FllJktQ7NTXBpZdCy3Xkzz8fbr8930yqK4usJEnqvTbZBE48sXU+ahS8/np+eVRXFllJktS7HXQQ7LprNp45EyZNyjeP6sYiK0mSeremJrjsMlhttWx+zjlw5535ZlJdWGQlSVLvt9lmcPzxrfORI2H+/PzyqC4sspIkqTEcfDB87GPZ+Kmn4Mgj882jlWaRlSRJjaFPn2yLQb9+2fzMM+Huu/PNpJVikZUkSY1jiy3g2GOzcUqw//6wYEG+mVQzi6wkSWos48fDTjtl4yefhJ/8JN88qplFVpIkNZaWLQarrprNzzgD/vznfDOpJhZZSZLUeD74QZg6NRsvXQojRsCbb+abSV1mkZUkSY3p0ENhhx2y8WOPwZQpucZR11lkJUlSY+rbFy6/HFZZJZufcgrcd1++mdQlFllJktS4PvQhmDw5Gy9dml3FYOHCfDOp0yyykiSpsR1+OGy3XTZ+9FE4+uh886jTLLKSJKmxtWwxaG7O5iedBH/5S76Z1CkWWUmSpA9/uPV6skuWZFsMFi3KN5NWyCIrSZIEcMQRMHRoNn7kETjuuHzzaIUsspIkSZBtLbj88myrAcDxx8PDD+ebSctlkZUkSWoxdCj8+MfZePFi2G8/qFRyjaSO9c07gCRJUqEceSRcd122veCvf4WJE+FLX8o7Vce23BI22CDvFLmwyEqSJLW1yipwxRWw447ZF7/OOit7FNWAAfCnP8HWW+edpMe5tUCSJGlZ226bffmrDN54o2G3QHhGVpIkqT1Tp8LGG8PTT+edpGNXXw1PPAEPPQQnn5xti2ggFllJkqT29OkDo0blnWL59toLdtopu73u1Knw5S/DVlvlnarHuLVAkiSprHbYAQ47LBtXKtmNHBYvzjdTD7LISpIkldmUKfCBD2TjBx6AU0/NNU5PsshKkiSVWb9+2Y0cmqq1bvJkePTRfDP1EIusJElS2e20E0yYkI0XLYIRI7JLh/VyFllJkqTe4OijYYstsvG998IZZ+SbpwdYZCVJknqD1VbLthhEZPOjjoLHH883UzezyEqSJPUWu+wC48dn44ULe/0WA4usJElSb3LssbDZZtn4T38q9u11V5JFVpIkqTfp3x8uu6x1i8GRR8KTT+abqZtYZCVJknqbXXeFceOy8YIFMHJkdvevXsYiK0mS1BudcAJsskk2vusuOPfcfPN0A4usJElSbzRgAFx6aev8iCPgqafyy9MNLLKSJEm91e67w9ix2Xj+/F63xcAiK0mS1JuddBJsvHE2vvNOuOCCXOPUk0VWkiSpN1t9dbjkktb54YfDzJn55akji6wkSVJv9+lPw5gx2fiNN2DUKEgp30x1YJGVJElqBCefDBttlI1vvx0uuijfPHVgkZUkSWoEgwa9fYvBxInw9NP55akDi6wkSVKj+OxnsysXALz+OoweXeotBhZZSZKkRnLaabDhhtl4xozsdrYlZZGVJElqJIMHv31/7IQJ8Mwz+eVZCRZZSZKkRrPHHrDfftl47lw44IBSbjGwyEqSJDWi00+HDTbIxjffDFdemW+eGlhkJUmSGtGaa8KFF7bOx4+HZ5/NL08NCl1kI2JSRNwfEfMi4sWIuD4i3p93LkmSpF7hi1+E73wnG8+ZAwceWKotBn3zDrACnwDOBe4ny3o8cGtEbJlSeiPXZJIkSb3BtGnZ1Quefx5uvBEuvxz23nv5r6lUaH79dXjtNWhuXvkMc+fW9LJCF9mU0ufbziNiP+BFYDvgj+29JiJWBVZtc2ggQKVSoVKpdE9QdVrLGrgWxeB6FIvrUSyuR7G4Ht1o4EDinHPou88+2XzkyNZrzXagGdiz+5OtUKQSnT6OiM2AJ4EPp5T+r4PnTAEmL3t8+vTp9O/fv3sDSpIkldR2p53GhnfdlcvvngsMzoaDU0qdPj1bmiIbEU3Ab4E1UkofX87z2jsj+8zs2bNZe+21uzmlVqRSqTBjxgyGDRtGcz3+KkIrxfUoFtejWFyPYnE9esCcOTQdeSQxa9YKn5qWLuXll19myJAhRNPKf+Vq7uLFrHnbbdDFIlvorQXLOBfYCuiwxAKklBYCC1vmEQFAc3Oz/+AXiOtRLK5HsbgexeJ6FIvr0Y2GDHn7VQyWo1KpcM/vfseee+5Zl/Vomjs3u1FDF5WiyEbEOcAXgd1SSuW89YQkSZLqqtBFNrLTqWcDewO7p5Rm5hxJkiRJBVHoIku2nWA48GVgXkSsVz0+J6W0IL9YkiRJyluhb4gAfJ/sS2x3ALPbPP4rx0ySJEkqgEKfkU0pRd4ZJEmSVExFPyMrSZIktcsiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSskiK0mSpFKyyEqSJKmULLKSJEkqJYusJEmSSqkURTYiDoqIf0XEmxFxb0TsmHcmSZIk5avwRTYi/gs4HZgKbAv8FbglIt6VazBJkiTlqvBFFpgAXJxSujyl9ChwIDAfGJFvLEmSJOWpb94BliciVgG2A05oOZZSWhoRtwE7d/CaVYFV2xwaCPDqq692Y1J1VqVSYf78+bzyyis0NzfnHafhuR7F4noUi+tRLK5HsdR7PebNm1fT6wpdZIEhQB/ghWWOvwB8oIPXTAImL3twiy22qG8ySZIk1dtAYG5nn1z0IluLE8j21LYYCDwDbAjUVvdVT65HsbgexeJ6FIvrUSyuR7F0x3oMBJ7ryguKXmRfBpYA6y5zfF3g+fZekFJaCCxsmUdEy3BeSqnTDV/dw/UoFtejWFyPYnE9isX1KJZuWo8uv0+hv+yVUloE/AX4dMuxiGiqzv+cVy5JkiTlr+hnZCHbJnBlRDwA3AeMBwYAl+eaSpIkSbkqfJFNKf06ItYBjgbWAx4GPp9SWvYLYB1ZSHYN2oUreqJ6hOtRLK5HsbgexeJ6FIvrUSyFWI9IKeX5+yVJkqSaFHqPrCRJktQRi6wkSZJKySIrSZKkUrLISpIkqZRKX2Qj4oiISBExrTpfKyLOjojHI2JBRMyKiLMiYvAyr3tPRNwUEfMj4sWIOCUiCn8Vh6JbifVI7Ty+mc9/i95j2fWoHrswIp6qrsdLEfGbiPjAMq/z89ENVmI9/Hx0g/bWo83PIiJurv78K8v8zM9HN1iJ9fDz0Q06+PPqjnb+t75gmdf16Oej1B+8iNgBGAP8rc3hDaqPicCjwHuBC6rH9qm+rg9wE9ndwXYB1gd+BlSAH/dQ/F6n1vVoY3/g/7WZ/6fbwjaADtYDspuM/AKYBawFTAFujYj3pZSW+PnoHrWuR5vn+fmoo+WsR4vxwDsu6+Pno3vUuh5t+PmooxWsx8XAT9vM57d5Xc9/PlJKpXwAqwNPAJ8B7gCmLee5Xye7zlnf6nwPqre+bfOcA4E5wCp5/3cr42Nl1qN6LAFfyfu/R295dHE9tq7+779pde7no0DrUT3m56MH1wMYSnYP+fWW/d/ez0ex1qP6cz8fPbQenfjzq8c/H2XeWnAucFNK6bZOPHcwMDeltLg63xl4JL39pgq3AIOAD9U3ZsNYmfV46z0i4uWIuC8iRkS03shZXdap9YiIAWRnMmYC/64e9vNRfyuzHm+9h5+PuulwPSKiPzAdOCil9Hw7r/XzUX8rsx5vvYefj7pZ0Z9X36r+b/1/EXFCdY1a9Pjno5RbC6p7X7YFdujEc4cAPwEuanN4PWDZO4O90OZn6oI6rAdkf01xO9lfUXwWOI/s3wrPqmvYBtCZ9YiIscDJZLd7fhwYllJaVP2xn486qsN6gJ+PuunEepwB/Cml9JsOfu7no47qsB7g56NuOrEe04GngefI/vboJOD9wFerP+/xz0fpimxEbAScSfYH/ZsreO4gsr0aj5LtO1Od1Ws9UkrHtJk+VD0zdRj+QdQlXViPXwAzyPYvTQSujoiPrWgN1TX1Wg8/H/WxovWIiL2ATwHb9HS2RlSv9fDzUR+d+fMqpdT2JNQjETEb+H1EbJpSeqonci6rjFsLtgPeBTwYEYsjYjHwCeCQ6rwPQEQMJNv4PQ/+/3buP/arqo7j+PNlJAnMKSvRyUzFhWQIUY0pujDF/EHgr347sWbklv0QmxNd6dKaOTf6obnKJWZqGgYOZsgPQ1r+CPo6lGkGi68yAiVAoa+AhO/+OOcrt9vn8/2Bl+/3e9nrsd19Pp977j33nHs+5+79OZ97LudHxK5CHhuAIaV8hxTSrOuqaI9GngaGSuq/D8u+P+pSe0TE6xGxKiKWkibdHQ+cn/Nw/6hOFe3RiPvH3umwPYAJwDDgtUI6wEOSluT37h/VqaI9GnH/2Dtdul6VPJ1fj8uvPd4/ajciCywGRpbW3QX8DfhhpFnXB5PuydgJTGrwy+JJ4DpJh0XEq3ndBGArabTQuq6K9mhkNLAlInZWWtr9X6ft0WAf5aX9ou/+UZ0q2qMR94+902F7AP8Cfl5Kfw64EpibP7t/VKeK9mjE/WPv7M31anR+XZ9fe7x/1C6QjYhtwMriOkltwKaIWJmDpgXAAOBi4OC8DmBjbogFpBN6j6SrSfdt3ATc7i9+91TRHpI+RfrF9hSwg/Slvxa4tYeqsd/oQnscC3yW1CYbgaHANcB24JG8i/tHRapoD/eP6nTWHnnVhlI6wMsRsSavcv+oSBXt4f5RnS5cr4YBXyBdmzaR7pGdASyNiPbHdPV4/6hdINsFY4Cx+f3qUtoxQGsOniYCd5B+PbQBd/O/z0WzanTaHqTny32N1CGUt5tGeladVWsHcCrpmYyHkm7CXwqc3P7r2f2jR3XaHrh/9CnuH32O+0fPeZP0SK5vkSamrgUeIgWqQO/0D+VnfJmZmZmZ1UodJ3uZmZmZmTmQNTMzM7N6ciBrZmZmZrXkQNbMzMzMasmBrJmZmZnVkgNZMzMzM6slB7JmZmZmVksOZM3MzMyslhzImlmtSApJ5/V2OepG0hJJP+rtcpiZVcmBrJn1Okkzc4AaknZJekXSQklfllS+Th0B/KGL+dYm6M3nYE4F+YzP9T6kinL1tv2tPmZWLQeyZtZXzCcFqUcDZwN/BH4MzJPUr32jiNgQETt7pYRWW0r6db6lmdWJA1kz6yt25iB1XUS0RMQPgMmkoPbS9o2Ko6ySDpR0m6T1knZIeknS9JzWmneZnfdpzeuHSXo4j/r+W9IySWcUCyKpVdK1kn4laZuklyVNLW0zVNL9kjZLapO0XNLYQvpkSS25XP+QdH2zQErSDcAUYHJhZHp8Thsp6TFJ2yVtkvQLSYOa5HM06QcAwJacz8zCJgdIuiWXeUM+bnH/QyTdKWmjpK35uKMaHauq85DLeJmk2ZLekLRK0qTO6iPpAEnTJa3J52aFpIsK+baP5J4t6a/ATuCUjupiZvXjQJRqsY0AAASlSURBVNbM+qyIeAxYAVzQZJNvAJOAzwDDgS8CrTntY/n1S6SR3vbPg4BHgNOBD5NGgudKOqqU91XA8rzNz4A7JA0HyIHk48CR+fijgFvI11RJpwK/Jo0ofxD4KikYv65JPW4FHmTPqPQRwBOSBgKPAlty+T8NnAHc1iSftcCF+f3wnM83C+lTgDZgLHA18F1JEwrpvwMOI/14+AjQAiyWNLjRwSo8D9fn+p9Iapt78zE7qs904BLgcuAEYAbwG0kfL+V9M3ANMAJ4tlE9zKzGIsKLFy9eenUBZgJzmqT9Fni+8DmA8/L7nwCLATXZ9+1tOzn+SuCKwudW4J7CZwGvAJfnz1OBrcDgJvktAqaX1l0M/LM75wD4CrAZGFhYdw6wGxjSJJ/xud6HlNYvAf5UWvcX4Ob8/hTgdaB/aZvVwNQmx3rH5yGX9cbC54F53VnN6gP0JwXkJ5XyvhO4r7Tf5N7+fnvx4mXfLb5fyMz6OpECkkZmAguBFyXNB+ZFxIIOM0ujiDcA55JG+PoBBwHlEdm3R+8iIiRtII1WAowGnomIzU0OMwoYJ6k48vgu4D2SBkTEGx2VsWAEsCIi2grr/kwa8RxOCq67ozwiuZ49dRpFGq3eJKm4zUHAsCb5VXUeiue6TdLWQrkaOQ4YACwslfVA4JnStss7yMfMas6BrJn1dSOANY0SIqJF0jGkv8LPAB6UtCgiLmq0fXYrMAH4Nmm0cTswixQEFe0qH449t2Nt76TMg0h/l/++QdqOTvbdlzqq0yBSYDu+wX6vNcmvqvPQUbma5Qvpx8i6Ulp5ImAbZrbfciBrZn2WpE8AI0n3PzYUEVuBB4AHJM0C5ksanEcJd5FGAIvGATMjYnY+xiDSkxK641ngssJxylqA4RGxuht5vtmgrC8Al0oaWBiVHQe8BbzYQT40yKszLcDhwH8iorWL++yL81DWqD7PkwLWoyLi8XeQt5nVnCd7mVlf0V/S4ZKOlDRG0rXAw8A80oSh/yNpmqTPSzpe0gdIk6E2sGcEsRU4Ped7aF63CrhA0ug8I/8+un8tvD8fZ46kcZKOlXShpJNy+veAS/IM/RMkjZD0OUk3dZBnK3CipOGS3ivp3cC9pJHLuyV9SNJpwE9J9+82u63gJdKI5kRJ72v2hIMGFgFP5jqdKeloSSdL+r6kj/bgeei0PhGxjTSyPkPSFKUnUYyR9HVJU7qRt5nVnANZM+srziL9td1Kmr1/GumpBJMjYneTfbaRZt8vB5aRRlbPiYi3cvpVpNsI1rLn3slppKcAPAHMJT0VoKU7BY2IN4EzgVdJs+yfI82M353THwUm5m2WAU8BV5KCsmZ+SRplXQ5sBMble0g/CQzO+cwiTW67ooOyrSP9nX8z6R7aZk84KO8XpIlkS4G7gL+TJtq9nyb34u6j89DV+nwHuJH09IIXSN+Zc2lyG4qZ7Z+Url1mZmZmZvXiEVkzMzMzqyUHsmZmZmZWSw5kzczMzKyWHMiamZmZWS05kDUzMzOzWnIga2ZmZma15EDWzMzMzGrJgayZmZmZ1ZIDWTMzMzOrJQeyZmZmZlZLDmTNzMzMrJb+C7VoQmcMG4jAAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 800x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(8, 6), dpi=100)\n",
    "plt.plot(x, [int(p) for p in I], 'r', linewidth=2.0)\n",
    "plt.xlim(420, radius)\n",
    "plt.ylim(0, 15)\n",
    "plt.ylabel('Self information')\n",
    "plt.xlabel('Distance to the center')\n",
    "plt.grid()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "2.3753165837275243"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "I[-1]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "6.5"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "1.0*int(I[420]) / int(I[-1])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'[990, 980, 971, 962, 954, 947, 939, 932, 925, 918, 912, 905, 899, 893, 887, 881, 875, 869, 863, 857, 852, 846, 841, 835, 830, 825, 819, 814, 809, 804, 799, 794, 789, 784, 779, 775, 770, 765, 761, 756, 751, 747, 742, 738, 733, 729, 725, 720, 716, 712, 707, 703, 699, 695, 691, 687, 682, 678, 674, 670, 666, 662, 659, 655, 651, 647, 643, 639, 636, 632, 628, 624, 621, 617, 613, 610, 606, 603, 599, 595, 592, 588, 585, 581, 578, 575, 571, 568, 564, 561, 558, 554, 551, 548, 544, 541, 538, 535, 532, 528, 525, 522, 519, 516, 513, 510, 507, 503, 500, 497, 494, 491, 488, 485, 482, 479, 477, 474, 471, 468, 465, 462, 459, 456, 454, 451, 448, 445, 442, 440, 437, 434, 431, 429, 426, 423, 421, 418, 415, 413, 410, 408, 405, 402, 400, 397, 395, 392, 390, 387, 385, 382, 380, 377, 375, 372, 370, 367, 365, 363, 360, 358, 355, 353, 351, 348, 346, 344, 341, 339, 337, 335, 332, 330, 328, 326, 323, 321, 319, 317, 314, 312, 310, 308, 306, 304, 302, 299, 297, 295, 293, 291, 289, 287, 285, 283, 281, 279, 277, 275, 273, 271, 269, 267, 265, 263, 261, 259, 257, 255, 253, 251, 249, 247, 246, 244, 242, 240, 238, 236, 235, 233, 231, 229, 227, 225, 224, 222, 220, 218, 217, 215, 213, 211, 210, 208, 206, 205, 203, 201, 200, 198, 196, 195, 193, 191, 190, 188, 187, 185, 183, 182, 180, 179, 177, 176, 174, 173, 171, 170, 168, 167, 165, 164, 162, 161, 159, 158, 156, 155, 153, 152, 150, 149, 148, 146, 145, 143, 142, 141, 139, 138, 137, 135, 134, 133, 131, 130, 129, 127, 126, 125, 124, 122, 121, 120, 118, 117, 116, 115, 114, 112, 111, 110, 109, 108, 106, 105, 104, 103, 102, 101, 99, 98, 97, 96, 95, 94, 93, 92, 90, 89, 88, 87, 86, 85, 84, 83, 82, 81, 80, 79, 78, 77, 76, 75, 74, 73, 72, 71, 70, 69, 68, 67, 66, 65, 64, 64, 63, 62, 61, 60, 59, 58, 57, 56, 56, 55, 54, 53, 52, 51, 51, 50, 49, 48, 47, 47, 46, 45, 44, 43, 43, 42, 41, 40, 40, 39, 38, 38, 37, 36, 35, 35, 34, 33, 33, 32, 31, 31, 30, 29, 29, 28, 28, 27, 26, 26, 25, 25, 24, 23, 23, 22, 22, 21, 21, 20, 19, 19, 18, 18, 17, 17, 16, 16, 15, 15, 14, 14, 13, 13, 13, 12, 12, 11, 11, 10, 10, 10, 9, 9, 8, 8, 8, 7, 7, 6, 6, 6, 5, 5, 5, 4, 4, 4, 3, 3, 3, 2, 2, 2]'"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "repr([int(p) for p in I])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
